/**
 * 工作区设置脚本
 * 在浏览器控制台中执行此脚本来设置正确的工作区根目录
 */

async function setupWorkspace() {
  try {
    console.log('🔧 开始设置工作区...');
    
    // 获取工作区存储
    const { useWorkspaceStore } = await import('./src/stores/workspace.ts');
    const workspaceStore = useWorkspaceStore();
    
    // 设置当前项目目录为工作区根目录
    const projectPath = 'c:\\Users\\24648\\Desktop\\tauri\\tauri-angular';
    console.log(`📁 设置工作区根目录: ${projectPath}`);
    
    await workspaceStore.setWorkspaceRoot(projectPath);
    
    console.log('✅ 工作区设置完成！');
    console.log('📊 开始构建索引...');
    
    // 启动工作区索引
    await workspaceStore.startWorkspaceIndexing();
    
    console.log('🔍 等待索引完成...');
    
    // 等待索引完成
    const { workspaceIndexer } = await import('./src/services/WorkspaceIndexer.ts');
    
    const checkIndexing = () => {
      if (workspaceIndexer.isIndexing.value) {
        const progress = workspaceIndexer.progress.value;
        console.log(`📈 索引进度: ${progress.phase} - ${progress.processedCount}/${progress.totalCount}`);
        setTimeout(checkIndexing, 1000);
      } else {
        console.log('🎉 索引构建完成！');
        console.log('🚀 可以开始诊断分析了！');
        
        // 手动触发诊断服务
        setTimeout(async () => {
          try {
            const { DiagnosticManager } = await import('./src/services/diagnosticManager.ts');
            const manager = DiagnosticManager.instance;
            await manager.refreshAll();
            console.log('🩺 诊断服务已启动！');
          } catch (error) {
            console.error('❌ 启动诊断服务失败:', error);
          }
        }, 1000);
      }
    };
    
    checkIndexing();
    
  } catch (error) {
    console.error('❌ 设置工作区失败:', error);
  }
}

// 执行设置
console.log('🚀 启动工作区设置脚本...');
setupWorkspace();